package moon.core.instruction;

import moon.core.entity.Entity;

/** 
 * 
 * Creation instruction. In MOON is associated to:
 * <code>create ENTITY</code>.
 * 
 * @see moon.core.instruction.Instr
 * @author <a href="mailto:rmartico@ubu.es">Ra&uacute;l Marticorena</a>
 */
@SuppressWarnings("serial")
public abstract class CreationInstr extends Instr {
	
	/** 
	 * Entity that points the instance.
     */    
    private Entity entity;

    /** 
     * New creation.
     * 
     * @param line    line
     * @param column  column 
     */
    public CreationInstr(int line, int column) {
        super(line, column);        
    }
    
    /** 
     * Gets the instantiated entity.
     * 
     * @return instantiated entity
     * @see #setEntity 
     */    
    public Entity getEntity() {
        return this.entity;
    }
    
    /** 
     * 
     * Sets the entity.
     * 
     * @param pEntity entity
     * @see #getEntity
     */    
    public void setEntity(Entity pEntity) {
        this.entity = pEntity;
    }
} // CreationInstr
